//1.引入express模块
const express=require('express')

//引入数据库连接池模块 
const pool=require('../pool')

//2.创建路由器模块
const r=express.Router()
 
//3.添加路由接口

// 3.1注册接口   post /reg    127.0.0.1
r.post('/reg',(req,res,next)=>{
  // res.send({code:200,msg:'注册成功'})     //先测试一下接口是否成功
  // 获取post传递的参数
  var obj=req.body
  console.log(obj);
  //验证手机号格式
  if (!/^1[3-9]\d{9}$/.test(obj.AD_admin_phone)) {
    res.send({code:401,msg:'手机号码格式错误'})
    //如果手机号码格式错误，阻止往后运行
    return
  }

  if (!/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/.test(obj.AD_admin_email)) {
    res.send({code:401,msg:'邮箱账号格式错误'})
    
    return
  }

  //引入连接池对象成功后    执行SQL命令       将数据插入到 boss_ApplyFor表里面
  pool.query('insert into ad_admin set ?',[obj],(err,r)=>{
    if (err) {
      // throw err
      next(err)
      return
    }
    console.log(r);
    //执行成功后再响应
    res.send({code:200,msg:'添加成功'})
  })
})

// 3.2登录接口    post   /  login
r.post('/login',(req,res,next)=>{
  // res.send({code:200,msg:'登录成功'})     //先测试一下接口是否成功
  var obj=req.body
  console.log(obj);
  //执行SQL语句
  pool.query('select * from ad_admin where AD_admin_id=?',[obj.AD_admin_id],(err,r)=>{
    if (err) {
      // throw err
      next(err)
      return
    }
    console.log(r);
    if (r.length===0) {
      res.send({code:501,msg:'此负责人不存在'})
    }else{
      res.send({code:200,msg:'查询成功'})
    }
  })
})


//删除接口    delete  /delete
r.delete('/delete',(req,res,next)=>{
  // res.send('删除成功')
  var obj=req.body
  console.log(obj);
  //执行生气了语句
  pool.query('delete from ad_admin where AD_admin_order=?',[obj.AD_admin_order],(err,r)=>{
    if (err) {
      next(err)
      return
    }
    console.log(r);
    if (r.affectedRows===1) {
      res.send({code:200,msg:'删除成功'})
    } else {
      res.send({code:501,msg:'删除失败'})
    }
  })
}) 


//修改接口  put  /update
r.put('/update',(req,res,next)=>{
  // res.send({code:200,msg:'修改成功'})

  var obj=req.body
  console.log(obj);
  //验证手机号格式
  if (!/^1[3-9]\d{9}$/.test(obj.AD_admin_phone)) {
    res.send({code:401,msg:'手机号码格式错误'})
    //如果手机号码格式错误，阻止往后运行
    return
  }

  if (!/^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/.test(obj.AD_admin_email)) {
    res.send({code:401,msg:'邮箱账号格式错误'})
    
    return
  }

  pool.query('update ad_admin set ?  where AD_admin_order=?',[obj,obj.AD_admin_order],(err,r)=>{
    if (err) {
      next(err)
      return
    }
    console.log(r);
    if (r.affectedRows===1) {
      res.send({code:200,msg:'修改成功'})
    }else{
      res.send({code:501,msg:'修改失败'})
    }
  })
})

// 4.暴露路由器对象
module.exports=r